گسترش دانش و اعتلای زبان با ارائه مطالب علمی به زبان فارسی روان در محیط اینترنت
متدولوژی RUP و آزمون پذیرش سیستم
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
عنوان مقاله: متدولوژی RUP و آزمون پذیرش سیستم
RUP Methodology and System Acceptance Test
نویسنده/ مترجم: اکبر قراخانی بهار
Akbar Gharakhani Bahar
آدرس پست الکترونیکی ارسال کننده:
موضوع اصلی: تولید نرمافزار - موضوع فرعی: متدولوژیهای نرمافزار
سه کلیدواژه اصلی به ترتیب اهمیت: unit test، integration test، system test
سه کلیدواژه فرعی به ترتیب اهمیت: acceptance test،alpha test ، beta test
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
چکیده مقاله
در RUP، کار انتقال سیستم از محیط ایجاد کننده به محیط استفاده کننده آن، در طی«فاز انتقال» که آخرین فاز از فازهای چهارگانه RUP است، صورت میگیرد. با توجه به وجود «تکرار» در فازهای RUP، سیستم نهایی غالبا در طی تکرارهای مختلف و در هر تکرار نسخه کاملتری از سیستم به محیط استفاده کننده منتقل میگردد. قبل از اجرای فاز انتقال در RUP، لازم است که مراحل آزمون اولیه نرمافزار توسط ایجاد کننده آن انجام شده و «معیار» مربوط به پایان «فاز ساخت» به عنوان فاز سوم پیش از فاز انتقال نیز محقق شده باشد. مفهوم معیار مربوط به پایان فاز ساخت این است که نرمافزار به مرحله عملیاتی شدن رسیده و میتواند به صورت آزمایشی توسط استفاده کنندگان مورد استفاده قرار گیرد. مفهوم تکرار در RUP متضمن شکستن پروژه اصلی به چند پروژه فرعی است. انجام پروژههای فرعی با شروع از پروژه فرعی اول در قالب یک تکرار و ادامه کار با پروژههای فرعی در قالب تکرارهای بعدی، به صورتی پیشرونده ما را در نهایت با محصول کل پروژه و نرمافزار نهایی همراه میکند. در این نگرش، «پیشرونده» به این مفهوم است که با هر تکرار در واقع نسخه جدیدی از نرمافزار که نسبت به نسخه قبلی «کاملتر» و نیز «بیعیبتر» است، به استفاده کنندگان ارائه میشود. به بیان دیگر در پایان پروژه فرعی n، نسخههای جدید محصولات پروژههای فرعی 1 تا 1- n (ضمن رفع مشکلات نسخ پیشین آنها) به علاوه محصول پروژه فرعی n ارائه میشود. به همین خاطر گفته میشود که در RUP آزمونهای پذیرش در طول فرایند ایجاد نرمافزار در قالب تکرارهای RUP از طرف استفاده کنندگان نهایی همواره میتوانند انجام شوند. بدین ترتیب در RUP به جای یک آزمون پذیرش در روش سنتی، میتوان n آزمون پذیرش ترتیب داد که به صورتی پیشرونده از بخش اول سیستم شروع و با انباشت بخشهای بعدی سیستم بر روی هم، در نهایت به آزمون پذیرش کل سیستم ختم شود.
دریافت فایل PDF مقاله
متدولوژی RUP و آزمون پذیرش سیستم
مقدمه
هر سیستم نرمافزاری بعد از آماده شدن برای اجرا، در محیط استفاده کنندگان نهایی آن نصب و آماده اجراهای آزمایشی توسط استفاده کنندگان میگردد. در RUP، کار انتقال سیستم از محیط ایجاد کننده به محیط استفاده کننده آن، در طی« فاز انتقال» (Transition Phase) که آخرین فاز از فازهای چهارگانه RUP است، صورت میگیرد. البته با توجه به وجود «تکرار» (iteration) در فازهای RUP، سیستم نهایی غالبا در طی تکرارهای مختلف و در هر تکرار نسخه کاملتری از سیستم به محیط استفاده کننده منتقل میگردد. بدین خاطر در عمل ممکن است فاز انتقال چندین تکرار یا مرحله را شامل شود.
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
بدیهی است که قبل از اجرای فاز انتقال در RUP، لازم است که مراحل آزمون اولیه نرمافزار توسط ایجاد کننده آن انجام شده و «معیار» (milestone) مربوط به پایان «فاز ساخت» (Construction Phase) به عنوان فاز سوم پیش از فاز انتقال نیز محقق شده باشد. لازم به یادآوری است که معیار مربوط به پایان فاز ساخت Initial Operative Capability (IOC) است و مفهوم آن این است که نرمافزار به مرحله عملیاتی شدن رسیده و میتواند به صورت آزمایشی توسط استفاده کنندگان مورد استفاده قرار گیرد.
باید اضافه شود که RUP دارای ابزارهای متعددی برای انجام آزمون یا مدیریت آن است. در این زمینه ClearQuest، ClearCase، RequisitePro، Purify، PureCoverage، Robotو غیره میتوانند به کار گرفته شوند. در این مطلب به ابعاد مختلف آزمون پذیرش یک سیستم نرمافزاری اشاره خواهد شد.
انواع آزمون سیستم
آزمون یک سیستم نرمافزاری از نظر انجام دهنده یا محل انجام آزمون، در دو وجه مختلف زیر قابل طرح است:
آزمونهای ایجاد کننده / Developer's Tests
آزمونهای استفاده کننده / User's Tests
آزمونهای ایجاد کننده که غالبا برای کشف و رفع «خطاها/ اشتباهات» (faults) و «قصور/ کمبودها» (failures) اجرایی در سیستم ایجادی انجام میشوند، شامل انجام آزمونهای شناخته شده در صنعت نرمافزار است. این آزمونها موارد زیر را شامل میشوند:
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
آزمون تک تک واحدها/ Unit Test شامل آزمون مربوط به تک تک واحدهای نرمافزاری که مجموع آنها کل سیستم نرمافزاری را به وجود میآورند.
آزمون واحدهای تجمیع شده به صورت سیستم/ Integration Test شامل آزمون مربوط به کل سیستم که از تجمیع یا یک پارچه کردن واحدهای نرمافزاری قبلا آزموده شده به دست آمده است.
آزمون سیستم/ System Test شامل آزمون مربوط به سیستم حاصل از تجمیع واحدها در تعامل با سایر سیستمهای مرتبط با این سیستم
آزمون سیستم غالبا طی دو مرحله جداگانه به شرح زیر صورت میگیرد:
آزمون آلفا/ Alpha Test شامل آزمون سیستم به صورت «درونی» (internal) و از طریق مجموعهای کوچک از «آزمون کنندگان» (testers) در محیط ایجاد کننده
آزمون بتا/ Beta Test شامل آزمون سیستم به صورت «بیرونی» (external) و از طریق مجموعه نسبتا بزرگی از«استفاده کنندگان» (users) در خارج از محیط ایجاد کننده و حتی عموم. از نرمافزار عرضه شده برای این منظور غالبا به عنوان «نسخه بتا» (Beta Version) نیز یاد میشود. همانطور که دیده میشود، معیار پایان فاز ساخت در RUP نیز در واقع شامل تهیه نسخه بتا از نرمافزار است.
آزمونهای مربوط به استفاده کننده، در عمل تحت عنوان «آزمون پذیرش» (Acceptance Test) یا «آزمون عملکرد» (Functional Test) انجام میشود. همچنین بعد از انجام هر گونه تغییرات در سیستم، آزمونی تحت عنوان «آزمون برگشتی» (Regression Test) انجام میشود تا اطمینان حاصل شود که تغییرات انجام شده باعث ایجاد خطا و قصور یا اثرات جانبی نامطلوب در سیستم نشدهاست. این آزمون ممکن است توسط هر دو طرف ایجاد کننده و استفاده کننده از سیستم انجام شود. به عنوان سفارش دهنده یا تحویل گیرنده یک سیستم نرمافزاری، ما در این مطلب به وجوه آزمون پذیرش یا عملکرد که متولی انجام آن استفاده کنندگان نهایی سیستم هستند، خواهیم پرداخت.
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
مفهوم آزمون پذیرش
آزمون پذیرش وسیلهای است که استفاده کنندگان نهایی سیستم با انجام آن از کارکرد درست سیستم از نظر خود، اطمینان حاصل میکنند. اگر آزمونهای قابل انجام توسط ایجاد کننده را وسیلهای برای کسب اطمینان از «انجام درست کارها» (Doing Things Right) در مورد «آنچه که ایجاد شدهاست» در نظر بگیریم، در این صورت آزمون پذیرش که از طرف استفاده کننده انجام میشود، به عنوان وسیلهای برای کسب اطمینان از «انجام کارهای درست» (Doing Right Things) در مورد «آنچه که خواسته شدهاست»، خواهد بود.
ذینفع اصلی در آزمون پذیرش، استفاده کننده سیستم است. اهداف استفاده کننده از سیستم از انجام آزمون پذیرش کسب اطمینان از موارد زیر است:
برآورده کردن نیازهای استفاده کننده/ Capturing User Requirements
اجرای بری از خطا و قصور سیستمFault and Failure Free / Running
آزمون پذیرش به عنوان «قرارداد»ی بین ایجاد کننده و استفاده کننده از سیستم تلقی میشود. با این تعبیر، وقتی یک آزمون پذیرش با موفقیت انجام شود، میتوان گفت که با این عمل در واقع پروژه مربوط به ایجاد سیستم پایان یافته است.
مفاد آزمون پذیرش باید بر اساس درخواستهای استفاده کنندگان تهیه شود. این گفته بدین معناست که مفاد باید مستقل از سیستم بوده و بدون توجه به سیستم ایجادی باشد و حتیالامکان پیش از تحویل گرفتن و حتی پیش از ایجاد سیستم تهیه شود تا این که از آنچه که در سیستم تدارک دیده شده است، تاثیر نپذیرفته باشد. مفاد آزمون پذیرش همچنین باید حتیالامکان توسط خود استفاده کنندگان (در صورت لزوم با کمک ایجاد کنندگان سیستم) و به زبان استفاده کنندگان که ممکن است از واژههای فنی نیز بدور باشد، تهیه شود.
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
چگونگی انجام آزمون پذیرش
آزمون پذیرش در بخش برآورده کردن نیازهای استفاده کننده، باید برآورده شدن یا نشدن نیازهای استفاده کننده را مشخص نماید. این کار میتواند با اجرای آزمایشی سیستم و بررسی اجزاء و مؤلفههای کل سیستم و تطابق آن با نیازمندیهای عنوان شده در مستندات پیشین، صورت گیرد. آزمون پذیرش در بخش اجرای بری از خطا و قصور سیستم نیز باید وجود یا عدم وجود خطا و قصور در اجزاء و مؤلفههای سیستم را مشخص کند. این کار نیز میتواند با اجرای آزمایشی سیستم و ثبت موارد خطا و قصور و گزارش آن به ایجاد کننده سیستم صورت گیرد.
همانطور که خود سیستم حول «موارد کاربرد» (Use Cases) قابل شکلگیری است، آزمون پذیرش سیستم نیز در حول «موارد آزمون» (Test Cases) قابل انجام است. به تعبیر استاندارد IEEE 829-1998 ، یک «مورد آزمون» شامل «ورودیهای معین» و «خروجیهای مورد انتظار» است. همانطور که یک سیستم میتواند شامل چندین مورد کاربرد باشد، یک آزمون پذیرش سیستم نیز میتواند شامل چندین مورد آزمون باشد. با این تعبیر، هر مورد کاربرد میتواند شامل یک یا چند مورد آزمون پذیرش باشد.
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
مطالب قابل بیان در باره یک مورد آزمون پذیرش شامل اقلامی نظیر شماره شناسایی آزمون، شماره ترتیب انجام و سایر نیازمندیهای آن است. این نیازمندیها میتواند شامل پیششرط/ پیشنیازهای آزمون، ورودی، رویه عملیاتی مورد آزمون در سیستم و خروجی مورد انتظار باشد. کل یک آزمون پذیرش را میتوان به صورت یک جدول «صفحه گسترده» (Spread Sheet) و یک مورد آزمون را نیز میتوان به صورت سطری از این جدول سازمان داد. در این صورت باید برای نتیجه واقعی که از طریق آزمون به دست آمده است، نام انجام دهنده آزمون، تاریخ و محل انجام آزمون و غیره نیز ستونهایی در نظر گرفته شود.
آزمون پذیرش ممکن است به صورت دستی، نیمه دستی+نیمه اتوماتیک و یا اتوماتیک صورت گیرد. بسته به مورد، آزمونهای پذیرش ممکن است با عناوینی از قبیل Test Specification، Test Suite یا Test Script نیز مورد خطاب قرار گیرند. در این صورت عنوان به کار رفته ممکن است به نوعی نشان دهنده نوع آزمون ازقبیل دستی، نیمه دستی+نیمه اتوماتیک و یا اتوماتیک نیز باشد.
توصیههای RUP در انجام آزمون پذیرش
یکی از نقاط قوت RUP در ایجاد سیستمهای نرمافزاری، ایجاد نرمافزار در طی «تکرار» های مختلف است. همانطور که میدانیم مفهوم تکرار در RUP متضمن شکستن پروژه اصلی به چند پروژه فرعی است. انجام پروژههای فرعی با شروع از پروژه فرعی اول در قالب یک تکرار و ادامه کار با پروژههای فرعی در قالب تکرارهای بعدی، به صورتی پیشرونده ما را در نهایت با محصول کل پروژه و نرمافزار نهایی همراه میکند. در این نگرش، «پیشرونده» به این مفهوم است که با هر تکرار در واقع نسخه جدیدی از نرمافزار که نسبت به نسخه قبلی «کاملتر» و نیز «بیعیبتر» است، به استفاده کنندگان ارائه میشود.
azsoftir.com
09367292276
azsoftir@gmail.com
azsoftir.com
09367292276azsoftir@gmail.com
azsoftir.com
09367292276
به بیان دیگر در پایان پروژه فرعی n، نسخههای جدید محصولات پروژههای فرعی 1 تا 1- n (ضمن رفع مشکلات نسخ پیشین آنها) به علاوه محصول پروژه فرعی n ارائه میشود. به همین خاطر گفته میشود که در RUP آزمونهای پذیرش در طول فرایند ایجاد نرمافزار در قالب تکرارهای RUP از طرف استفاده کنندگان نهایی همواره میتوانند انجام شوند. بدین ترتیب در RUP به جای یک آزمون پذیرش در روش سنتی، میتوان n آزمون پذیرش ترتیب داد که به صورتی پیشرونده از بخش اول سیستم شروع و با انباشت بخشهای بعدی سیستم بر روی هم، در نهایت به آزمون پذیرش کل سیستم ختم شود.
:: موضوعات مرتبط:
do rup ,
,
:: بازدید از این مطلب : 188
|
امتیاز مطلب : 0
|
تعداد امتیازدهندگان : 0
|
مجموع امتیاز : 0